/*     */ package com.zimbra.cs.ldap;
/*     */ 
/*     */ import com.zimbra.common.util.Log;
/*     */ import com.zimbra.common.util.ZimbraLog;
/*     */ import java.io.PrintStream;
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ 
/*     */ public abstract class ZLdapElement
/*     */ {
/*     */   public static class StringLdapElementDebugListener
/*     */     implements ZLdapElement.ZLdapElementDebugListener
/*     */   {
/*  31 */     private StringBuilder buffer = new StringBuilder();
/*     */     
/*     */     public void print(String txt)
/*     */     {
/*  35 */       this.buffer.append(txt);
/*     */     }
/*     */     
/*     */     public void println(String txt)
/*     */     {
/*  40 */       this.buffer.append(txt + "\n");
/*     */     }
/*     */     
/*     */     public void printStackTrace(Throwable e)
/*     */     {
/*  45 */       this.buffer.append(e.toString());
/*     */       
/*     */ 
/*  48 */       ZimbraLog.ldap.debug(e);
/*     */     }
/*     */     
/*     */     public String getString() {
/*  52 */       return this.buffer.toString();
/*     */     }
/*     */   }
/*     */   
/*     */ 
/*  57 */   public static final ZLdapElementDebugListener LOG_DEBUG_LISTENER = new ZLdapElementDebugListener()
/*     */   {
/*     */ 
/*     */     public void print(String txt)
/*     */     {
/*  62 */       ZimbraLog.ldap.debug(txt);
/*     */     }
/*     */     
/*     */     public void println(String txt)
/*     */     {
/*  67 */       ZimbraLog.ldap.debug(txt);
/*     */     }
/*     */     
/*     */     public void printStackTrace(Throwable e)
/*     */     {
/*  72 */       ZimbraLog.ldap.debug(e);
/*     */     }
/*     */   };
/*     */   
/*  76 */   public static final ZLdapElementDebugListener STDOUT_DEBUG_LISTENER = new ZLdapElementDebugListener()
/*     */   {
/*     */     public void print(String txt)
/*     */     {
/*  80 */       System.out.print(txt);
/*     */     }
/*     */     
/*     */     public void println(String txt)
/*     */     {
/*  85 */       System.out.println(txt);
/*     */     }
/*     */     
/*     */     public void printStackTrace(Throwable e)
/*     */     {
/*  90 */       e.printStackTrace();
/*     */     }
/*     */   };
/*     */   
/*     */ 
/*  95 */   private static ZLdapElementDebugListener DEFAULT_DEBUG_LISTENER = STDOUT_DEBUG_LISTENER;
/*     */   
/*     */   public static synchronized void setDefaultDebugListener(ZLdapElementDebugListener dbgListener) {
/*  98 */     DEFAULT_DEBUG_LISTENER = dbgListener;
/*     */   }
/*     */   
/*     */   protected void print(String txt) {
/* 102 */     print(null, txt);
/*     */   }
/*     */   
/*     */   protected void print(ZLdapElementDebugListener debugListener, String txt) {
/* 106 */     if (debugListener == null) {
/* 107 */       debugListener = DEFAULT_DEBUG_LISTENER;
/*     */     }
/* 109 */     debugListener.print(txt);
/*     */   }
/*     */   
/*     */   protected void println(String txt) {
/* 113 */     println(null, txt);
/*     */   }
/*     */   
/*     */   protected void println(ZLdapElementDebugListener debugListener, String txt) {
/* 117 */     if (debugListener == null) {
/* 118 */       debugListener = DEFAULT_DEBUG_LISTENER;
/*     */     }
/* 120 */     debugListener.println(txt);
/*     */   }
/*     */   
/*     */   protected void printStackTrace(Throwable e) {
/* 124 */     printStackTrace(null, e);
/*     */   }
/*     */   
/*     */   protected void printStackTrace(ZLdapElementDebugListener debugListener, Throwable e) {
/* 128 */     if (debugListener == null) {
/* 129 */       debugListener = DEFAULT_DEBUG_LISTENER;
/*     */     }
/* 131 */     debugListener.printStackTrace(e);
/*     */   }
/*     */   
/*     */   public void debug() {
/* 135 */     debug(null);
/*     */   }
/*     */   
/*     */   public void debug(ZLdapElementDebugListener debugListener) {
/* 139 */     print(debugListener, "NO DEBUG INFO");
/*     */   }
/*     */   
/*     */   public static abstract interface ZLdapElementDebugListener
/*     */   {
/*     */     public abstract void print(String paramString);
/*     */     
/*     */     public abstract void println(String paramString);
/*     */     
/*     */     public abstract void printStackTrace(Throwable paramThrowable);
/*     */   }
/*     */ }


/* Location:              /home/mint/zimbrastore.jar!/com/zimbra/cs/ldap/ZLdapElement.class
 * Java compiler version: 7 (51.0)
 * JD-Core Version:       0.7.1
 */